면접 후 프로그래밍 수행 과제

□ 과제 내용

① (평문 작성) ‘seed = 43578901 * seed + 234235’ 수식으로 간단한 난수 발생 함수를 작성한 후, ‘seed’ 초기값을 ‘1234’로 주어 10000개의 난수를 발생시켜 올림차순으로 SORT시킨 다음, 결과를 텍스트로 변환하여 파일로 저장

* 단, 발생시킨 난수는 ‘2 바이트 unsigned int’로 제한하고, 결과 파일엔 한 줄에 난수 한 개씩 저장

② (암호문 작성) ①에서 작성한 평문 파일을 한 줄씩 읽어 숫자로 변환한 다음, 줄번호가 소수(Prime Number)이면 줄번호로 XOR하고, 줄번호가 소수가 아니면 ①에서 작성한 난수 발생 함수(‘seed’ 초기값을 ‘2345’로)로 난수를 발생시켜 XOR한 다음, 결과를 텍스트로 변환하여 파일로 저장

* 줄번호는 ‘0’부터 시작하고, 소수 여부를 판단하는 함수는 직접 작성

③  (복호문 작성) ②에서 작성한 암호문 파일을 복호하는 루틴을 작성한 다음, 적용한 복호 결과를 텍스트로 변환하여 파일로 저장

□ 참고 사항

o 지원자가 선호하는 프로그래밍 언어를 사용하고, 본인이 모든 소스코드를 직접 작성

o 소스코드 ⋅결과파일(각각 3점)을 메일계정(zero2one@safeware.co.kr) 으로 제출